// pages/index/Fm/Fm.js
let app=getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    url:'',
    pageNum:1,
    pageSize:3,
    fm:[],
    pages:0,
    isPlaying: false,
    currentAudio: null
  },
  
  /**
   * 初始化音频上下文
   */
  initAudioContext() {
    this.innerAudioContext = wx.createInnerAudioContext();
    this.innerAudioContext.onPlay(() => {
      console.log('音频开始播放');
    });
    this.innerAudioContext.onPause(() => {
      console.log('音频暂停播放');
    });
    this.innerAudioContext.onStop(() => {
      console.log('音频停止播放');
      this.setData({
        isPlaying: false
      });
    });
    this.innerAudioContext.onEnded(() => {
      console.log('音频播放结束');
      this.setData({
        isPlaying: false
      });
    });
    this.innerAudioContext.onError((res) => {
      console.log('音频播放错误', res);
      this.setData({
        isPlaying: false
      });
    });
  },
  getFm(){
    wx.request({
      url: this.data.url+'fm/page',
      method:'get',
      data:{
        pageNum:this.data.pageNum,
        pageSize:this.data.pageSize
      },
      success:resp=>{
        this.setData({
          fm:resp.data.data.list,
          pages:resp.data.data.pages
        })
      }
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.setData({
      url:app.globalData.url
    })
    this.getFm()
    // 初始化音频上下文
    this.initAudioContext();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {
    // 页面卸载时释放音频资源
    if (this.innerAudioContext) {
      this.innerAudioContext.destroy();
    }
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },
  
  /**
   * 播放音频
   */
  playAudio(e) {
    const src = e.currentTarget.dataset.src;
    if (!src) {
      console.log('音频地址不存在');
      return;
    }
    
    // 停止当前播放的音频
    if (this.innerAudioContext) {
      this.innerAudioContext.stop();
    }
    
    // 设置新的音频源并播放
    this.innerAudioContext.src = src;
    this.innerAudioContext.play();
    
    this.setData({
      isPlaying: true
    });
  },
  
  /**
   * 暂停音频
   */
  pauseAudio() {
    if (this.innerAudioContext) {
      this.innerAudioContext.pause();
      this.setData({
        isPlaying: false
      });
    }
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})